import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import path from "path";
import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";

/**
 *  大家要做的事
 *    1. 所有人有一份放在 gitee 上的项目， 用于作业检查
 *    2. 写练习的时候，使用 git 进行版本管理，方便我们可以写多次
 */

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [ElementPlusResolver()],
    }),
  ],
  resolve: {
    alias: {
      "@": path.resolve(__dirname, "./src"),
    },
  },
  server: {
    proxy: {
      "/api": {
        // 这个 大家照抄就行
        target: "http://xue.cnkdl.cn:9082/mall-admin",
        changeOrigin: true,
        // 如果没写这个rewrite  ， 在请求的时候， 会向服务器发送的 请求的地址，会带上
        // 在 axios 封装里面的baseURL
        // 原本后端要的是 http://xue.cnkdl.cn:8088/mall-admin/login
        // 但是如果没有 rewrite ， 会把 /api 也带上
        // 变成 http://xue.cnkdl.cn:8088/mall-admin/aip/login
        // 所以在代理服务器里面，需要把 url 重写(rewrite)
        rewrite: (path) => path.replace(/^\/api/, ""),
      },
    },
  },
});
